Field of the Invention
The present invention generally relates to computer software. More specifically, the present invention relates to techniques for preparing geometry for three-dimensional (3D) printing.
Description of the Related Art
3D printers print three-dimensional objects. 3D printers is analogous to conventional printers in that, e.g., the printer may apply layer after layer of a substrate until completing a desired 3D structure, much like conventional printers apply a layer of ink to paper. Various types of 3D printers have been designed, and these 3D printers use a variety of raw materials for printing.
Stringent requirements are typically imposed as to geometry that is admissible as input to 3D printers. In addition, 3D printers cannot perfectly reproduce arbitrary geometry, as 3D printers are limited by resolution, printer size, and accuracy, among other things. These limitations of 3D printers give rise to a number of problems. For example, 3D printers may be unable to print discrete geometry (e.g., encoded as STereoLithography (STL) or Additive Manufacturing File Format (AMF) files) without tedious pre-processing, and may be unable to print large models altogether. Even if a 3D printer succeeds in printing a model, small features may be smoothed out or disappear, potentially disconnecting parts connected by thin features, due to limitations in resolution. Separate neighboring pieces may also be fused due to resolution or accuracy limitations. In addition, due to production artifacts, the actual appearance and surface properties of printed objects may not be known until after the object is printed.